package com.beiming.libra.domain.dto.requestdto;

import com.beiming.libra.common.constants.ValidateMessage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import javax.validation.constraints.NotBlank;
import lombok.Data;

/**
 * @author zhangqi
 */
@Data
@ApiModel("案件查询")
public class ArbitrationCaseRequestDTO implements Serializable {

  // 案件名称
  @ApiModelProperty(value = "案件名称", required = false, hidden = false)
  private String caseName;
  // 纠纷类型
  @ApiModelProperty(value = "纠纷类型", required = false, hidden = false)
  private String disputeType;
  // 案件状态
  @ApiModelProperty(value = "案件状态", required = false, hidden = false)
  private String caseStatus;
  // 排序字段
  @ApiModelProperty(value = "排序字段", required = false, hidden = true)
  private String sortField;
  @ApiModelProperty(value = "页号", required = false, hidden = false)
  private int pageNo;
  @ApiModelProperty(value = "每页显示数量", required = false, hidden = false)
  private int pageSize;
  @ApiModelProperty(value = "更新时间", required = false, hidden = true)
  private String updateStarTime;
  @ApiModelProperty(value = "更新时间", required = false, hidden = true)
  private String updateEndTime;
  @ApiModelProperty(value = "创建时间", required = false, hidden = true)
  private String createStarTime;
  @ApiModelProperty(value = "创建时间", required = false, hidden = true)
  private String createEndTime;

  @ApiModelProperty(value = "开始时间", required = false, hidden = false)
  private String starTime;
  @ApiModelProperty(value = "结束时间", required = false, hidden = false)
  private String endTime;

  //当前用户
  @ApiModelProperty(value = "当前用户ID", required = false, hidden = true)
  private String userId;
  //角色
  @ApiModelProperty(value = "用户角色", required = false, hidden = false)
  @NotBlank(message = ValidateMessage.CASE_USER_TYPE_NOT_BLANK)
  private String userType;

  @ApiModelProperty(value = "状态数组", required = false, hidden = true)
  private String[] caseStatusArr;
}
